<?php
/**
 * @version : 1.0
 * @package : lib/struct
 * @name :  CNumber
 * @todo:  Lớp  cơ sở CNumber. Thao tác cơ bản với số.
*/
class CNumber
{
	public $value = 0;
	static $thousand_separator = '.';
	static $decimal_separator = ',';
	function __construct($value)
	{
		$this->value = $value;
	}
	/**
	 * Hàm định dạng số thập phân
	 *
	 * @param int $decimals là số chữ số phần thập phân
	 * @return Trả về số thập phân có dạng 123.456,78
	 */
	
	function value($decimals=false)
	{
		return number_format($this->value,$decimals,CNumber::$decimal_separator,CNumber::$thousand_separator);
	}
	function __to_string()
	{
		return $this->value();
	}
	function number()
	{
		return str_replace(array('.',','),array('','.'),$this->value);
	}
	function price()
	{
		return str_replace(',00','',number_format($this->value,2,',','.'));
	}
}
function CNumber($value)
{
	return new CNumber($value);
}
?>